// miniprogram/pages/profile/profile.js
var app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 是否展示登录按钮
    show: null,
    // 用户昵称
    nickName: null,
    // 用户头像
    avatarUrl: null,
    /**
     * 其他功能面板
     * @param icon  前面图标的样式
     * @param title 功能标题
     * @param url 要跳转的页面
     */
    functions: [{
      icon: 'icon-a811 big',
      title: "我的优惠",
      url: "./myDiscount/myDiscount"
    }, {
      icon: 'icon-zuobiao',
      title: "我的地址",
      url: "./myAddress/myAddress"
    }, {
      icon: 'icon-talk',
      title: "联系管家",
      contact: true
    }, {
      icon: 'icon-wenti-',
      title: "常见问题",
      url: "./commonProblem/commonProblem"
    }, {
      icon: 'icon-xieyi',
      title: "服务协议",
      url: "./serviceAgreement/serviceAgreement"
    }]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: async function (options) {
    // 获取当前用户的openid
    var openId;
    // 云函数调用不需要获取用户授权即可获得其openid
    await wx.cloud.callFunction({
        // 云函数名称
        name: 'getUserInfo'
      })
      .then(res => {
        openId = res.result.openid // 获取用户openID
      })
      .catch(console.error)
    this.setData({
      userOpenId: openId
    })
    app.globalData.openId = openId;
  },
  // 用户登录
  bindGetUserInfo: async function (e) {
    if (e.detail.rawData) {
      // e.detail.rawData是JSON数据
      var rawData = JSON.parse(e.detail.rawData);
      app.globalData.login = true;
      app.globalData.userInfo.nickName = rawData.nickName;
      app.globalData.userInfo.avatarUrl = rawData.avatarUrl;
      this.setData({
        show: false,
        nickName: app.globalData.userInfo.nickName,
        avatarUrl: app.globalData.userInfo.avatarUrl
      })
      const db = wx.cloud.database();
      var that = this;
      // 查询当前用户是新用户还是老用户
      var newUser = true;
      // 查询为异步函数
      await db.collection('userInfo').where({
        _openid: that.data.userOpenId
      }).get().then((res) => {
        if(res.data.length !== 0){
          newUser = false;
        }
      })
      // 向数据库中插入用户数据
      if (newUser) {
        db.collection('userInfo').add({
          // data字段表示新增的JSON数据
          data: {
            order: [],
            address: [],
            discount: {"credit":[],"redEnvelope":[],"coupon":[]}
          }
        })
      }

    }
  },
  // 用户退出登录
  logout:function(){
    app.globalData.login = false;
    this.setData({
      show:true
    })
  },
  // 监听tabBar点击事件
  onTabItemTap: function () {
    this.setData({
      show: !app.globalData.login,
      nickName: app.globalData.userInfo.nickName,
      avatarUrl: app.globalData.userInfo.avatarUrl
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})